Distributed computing systems execute methods that are distributed across multiple computing devices. In early systems, proprietary protocols were used to communicate between the distributed components. This limited the reuse of many components. To overcome this, web services were created which use a standard eXtensible Markup Language (XML)-based communication platform known as SOAP (Simple Object Access Protocol) together with standard formats for describing the component and for registering the component. By using this standardized communication and publication system, components residing on different computers and different computing platforms become interoperable and loosely coupled such that code running on one platform can utilize methods exposed on another platform on another machine.
Most application platforms were developed prior to the emergence of web services. As a result, the methods in those applications were not available to code running on other platforms or machines.
To overcome this, some designers have manually written web service shells that provide a standard web services interface for remote code so that the remote code can invoke the logic in the applications. Writing such web service shells is time consuming since a separate web service method must be written for each application method. In addition, writing such web service shells requires additional expertise in the formation of web services methods and as a result is difficult for programmers who are familiar with coding for a particular application but are not familiar with the coding for web services.
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.